package co.edu.udea.iw.prestamos.bl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Configurable;
import org.springframework.stereotype.Service;

import co.edu.udea.iw.prestamos.modelo.dao.RolDAO;
import co.edu.udea.iw.prestamos.modelo.dto.Rol;
import co.edu.udea.iw.prestamos.modelo.dto.RolList;

/**
 * Lógica de negocio para la gestión de roles.
 * 
 * @author Dave Rivera <daverivera90@gmail.com>
 * @since 16-07-2014
 * @version 1.0
 */
@Configurable
@Service("rolBL")
public class RolBL {

	/**
	 * Se inyectan las dependencias de la clase.
	 */
	@Autowired
	private RolDAO rolDao;
	
	/**
	 * Devuelve una lista con los roles que puede tener asociado un usuario
	 * del sistema.
	 * 
	 * @return lista de roles disponibles.
	 */
	public Object obtenerRoles(){
		RolList rolList = new RolList();
		List<Rol> list = rolDao.obtenerTodos();
		
		for (Rol rol : list)
			rolList.add(rol);
		
		return rolList;
	}
}
